package top.jybill.dao;

import org.springframework.stereotype.Repository;
import top.jybill.domain.MyPageInfo;
import top.jybill.domain.Product;

import java.util.List;

/**
 * 商品接口
 */
@Repository
public interface IProductDao {

  /**
   * 查询所有商品
   * @return
   */
  List<Product> findAll();

  /**
   * 添加商品
   * @param product
   */
  void saveProduct(Product product) throws Exception;

  /**
   * 根据id获取对应product
   * @param id
   * @return
   */
  Product findProductById(String id);

  /**
   * 分页查询商品
   * @param page
   * @return
   */
  List<Product> findProductsByPage(MyPageInfo page);

  /**
   * 删除产品
   * @param pid
   */
  void delProduct(String pid);

  /**
   * 更新产品
   * @param product
   */
  void updateProduct(Product product);

  /**
   * 根据商品id查商品
   * @param pid
   * @return
   */
  Product findProductByPid(String pid);
}
